#ifndef EVENTHANDLER_H_INCLUDED
#define EVENTHANDLER_H_INCLUDED

#include <SDL.h>

class EventHandler
{
public:
	virtual ~EventHandler() = 0 {}
	EventHandler() {}
	void HandleEvent(const SDL_Event& event);
	virtual void OnKeyboardEvent(const SDL_KeyboardEvent&) {}
	virtual void OnMouseMotionEvent(const SDL_MouseMotionEvent&) {}
	virtual void OnMouseButtonDownEvent(const SDL_MouseButtonEvent&) {}
	virtual void OnMouseButtonUpEvent(const SDL_MouseButtonEvent&) {}
	virtual void OnJoystickAxisEvent(const SDL_JoyAxisEvent&) {}
};

#endif